Solving 10385 - Duathlon (Ternary search)
[andmenj-acm.git] / 11512 - GATTACA / gattaca_Sotelo2.java
blob918b452ebef5af01da42dec062e087a1cf041b7d
1 // Autor: Alejandro Sotelo
2 // Por compatibilidad en la codificacion, se eliminaron las tildes de este archivo
3 import java.io.*;
4 import java.util.*;
5 public class gattaca_Sotelo2 {
6 public static void main(String[] args) throws Exception {
7 BufferedReader br=new BufferedReader(new FileReader("gattaca.in"));
8 for (int T=Integer.parseInt(br.readLine()),c=0; c<T; c++) {
9 String s=br.readLine();
10 int n=s.length(),veces=0;
11 String res=null,arr[]=new String[n+1];
12 for (int k=0; k<=n; k++) arr[k]=s.substring(k);
13 Arrays.sort(arr);
14 for (int k=1; k<=n; k++) {
15 int i=0;
16 while (i<arr[k-1].length()&&i<arr[k].length()&&arr[k-1].charAt(i)==arr[k].charAt(i)) i++;
17 if (i==0) continue;
18 if (res==null||i>res.length()||(i==res.length()&&arr[k].substring(0,i).compareTo(res)<0)) {
19 veces=2;
20 res=arr[k].substring(0,i);
22 else if (i==res.length()&&arr[k].substring(0,i).equals(res)) veces++;
24 System.out.println(res==null?"No repetitions found!":(res+" "+veces));
26 br.close();